package com.bbx.aliyunapi.controller;


import com.aliyun.rds20140815.Client;
import com.aliyun.rds20140815.models.ModifySecurityIpsRequest;
import com.bbx.aliyunapi.config.RdsClientConfig;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@Slf4j
@RestController
@RequestMapping("/aliyun/rds")
public class RdsModifyController {

    private String DBInstanceIPArrayName = "jiqiren";

    private String modifuMode = "Cover";


    @Autowired
    private RdsClientConfig rdsClientConfig;


    /**
     * 修改RDS 白名单中  分组内的 ip
     * @param dBInstanceId    实例ID
     * @param ip   该实例的IP白名单，多个IP地址请以英文逗号（,）隔开，不可重复。支持如下两种格式：
     *
     * IP地址形式，例如：10.23.12.24。
     * CIDR形式，例如：10.23.12.0/24（无类域间路由，24表示了地址中前缀的长度，范围为1~32）。
     * @return
     * @throws Exception
     */
    @RequestMapping("update")
    public String update(String dBInstanceId,String ip ) throws Exception {
        log.info("/aliyun/rds/update!!!!!!!!!!!!!!!!!dBInstanceId[{}],ip[{} ]", dBInstanceId, ip);
        //获取client
        Client client = rdsClientConfig.getClient();


        ModifySecurityIpsRequest modifySecurityIpsRequest = new ModifySecurityIpsRequest()
                .setDBInstanceId(dBInstanceId)
                .setSecurityIps(ip)
                .setDBInstanceIPArrayName(DBInstanceIPArrayName)
                .setModifyMode(modifuMode);


        client.modifySecurityIps(modifySecurityIpsRequest);
        return "success";
    }



}




